<template>
  <h1>EL-表格组件</h1>
  <el-table :data="tableData" style="width: 100%">
    <el-table-column prop="date" label="日期" width="180"/>
    <el-table-column prop="name" label="姓名" width="180"/>
    <el-table-column prop="address" label="住址"/>
  </el-table>
  <hr>
  <el-table :data="arr" style="width: 100%">
    <!--    自带的序列选择属性值 可多选可单选-->
    <el-table-column type="selection" width="80"/>
    <!--    自带的序号属性值-->
    <el-table-column type="index" width="80"/>
    <el-table-column label="姓名" prop="name" width="120"/>
    <el-table-column label="工资" prop="salary" width="120"/>
    <el-table-column label="工作" prop="job" width="120"/>
    <!--若要添加非文本格式的内容时 需要引入<template></template>标签-->
    <el-table-column label="操作" style="width: 100%">
      <!--
        自定义列模板: 自定义列的显示内容
        #名称="变量名"[ #default=""] 插槽操作简写写法
        正常写法为: v-slot:名称="变量名"
        scope属性值: 保存了当前行数据的索引`$index`与当前行的完整数据`row`
          其中: $index 索引值从0开始
      -->
      <!--<template v-slot:default="scope">-->
      <template #default="scope">
        <!--
        index 索引
        row 表示当前所在单行的完整数据
        -->
        <el-button type="danger" @click="del(scope.$index,scope.row)">删除</el-button>
      </template>
    </el-table-column>
  </el-table>
</template>

<script setup>
import {ref} from "vue";

const arr = ref([
  {name: '张三', salary: 1, job: '老师'},
  {name: '李氏', salary: 100000, job: '老板'},
  {name: '王五', salary: 2, job: '牧师'},
  {name: '赵六', salary: 56, job: '乞丐'},
  {name: '钱七', salary: 7, job: '维修员'}
]);

const del = (i, emp) => {
  if (confirm('确定要删除' + emp.name + '吗')) {
    arr.value.splice(i, 1);
  }
};

const tableData = [
  {
    date: '2016-05-03',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    date: '2016-05-02',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    date: '2016-05-04',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    date: '2016-05-01',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
]
</script>

<style scoped>

</style>